Towards Inverse Execution of Constraint Handling Rules

نویسندگان

  • Amira Zaki
  • Thom W. Frühwirth
  • Slim Abdennadher
چکیده

Inverse execution is a non-deterministic process of discovering the inputs to a program starting from its output. This paper deals with the inverse execution of Constraint Handling Rules (CHR). First a simple inversion technique is proposed, which produces a reverse program consisting of rules with exchanged left and right hand sides. The limitations of this method are presented and reveal the need for a different CHR execution strategy. Then an extension is provided to execute the inverse program whilst exploring all possible execution paths incrementally and exhaustively through different methods such as breadth-first traversal or random path choice. An on-line tool was implemented to transform any forward CHR program into its equivalent inverse; examples and results highlight the validity of this work.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Concurrent goal-based execution of Constraint Handling Rules

We introduce a systematic, concurrent execution scheme for Constraint Handling Rules (CHR) based on a previously proposed sequential goal-based CHR semantics. We establish strong correspondence results to the abstract CHR semantics, thus guaranteeing that any answer in the concurrent, goal-based CHR semantics is reproducible in the abstract CHR semantics. Our work provides the foundation to obt...

متن کامل

Satisfiability Modulo Constraint Handling Rules (Extended Abstract)

Satisfiability Modulo Constraint Handling Rules (SMCHR) is the integration of the Constraint Handling Rules (CHRs) solver programming language into a Satisfiability Modulo Theories (SMT) solver framework. Constraint solvers are implemented in CHR as a set of high-level rules that specify the simplification (rewriting) and constraint propagation behavior. The traditional CHR execution algorithm ...

متن کامل

CHR Exhaustive Execution - Revisited

Constraint Handling Rules (CHR) apply guarded rules to rewrite constraints in a constraint store, until a final state is reached in which no more rules are applicable. The rules cannot be retracted, therefore CHR does not backtrack over alternatives. In this paper, a novel source-to-source transformation is proposed, which transforms any given CHR program to one that backtracks over all possibl...

متن کامل

A complete and terminating execution model for Constraint Handling Rules

We observe that the various formulations of the operational semantics of Constraint Handling Rules proposed over the years fall into a spectrum ranging from the analytical to the pragmatic. While existing analytical formulations facilitate program analysis and formal proofs of program properties, they cannot be implemented as is. We propose a novel operational semantics ω!, which has a strong a...

متن کامل

Using Rules to Animate Prolog Programs

The paper provides a methodology to visualize the execution of Prolog programs. Program animation is useful in debugging programs. It could also help beginners to Prolog understand how Prolog works. The provided approach uses Constraint Handling Rules (CHR). The aim of the work is to animate the algorithm implemented by the Prolog program.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • TPLP

دوره 13  شماره 

صفحات  -

تاریخ انتشار 2013